package com.igeekhome.pojo;

import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class ScanExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public ScanExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andIdIsNull() {
            addCriterion("id is null");
            return (Criteria) this;
        }

        public Criteria andIdIsNotNull() {
            addCriterion("id is not null");
            return (Criteria) this;
        }

        public Criteria andIdEqualTo(Integer value) {
            addCriterion("id =", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotEqualTo(Integer value) {
            addCriterion("id <>", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThan(Integer value) {
            addCriterion("id >", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("id >=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThan(Integer value) {
            addCriterion("id <", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThanOrEqualTo(Integer value) {
            addCriterion("id <=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdIn(List<Integer> values) {
            addCriterion("id in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotIn(List<Integer> values) {
            addCriterion("id not in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdBetween(Integer value1, Integer value2) {
            addCriterion("id between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotBetween(Integer value1, Integer value2) {
            addCriterion("id not between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andWaybillNumberIsNull() {
            addCriterion("waybill_number is null");
            return (Criteria) this;
        }

        public Criteria andWaybillNumberIsNotNull() {
            addCriterion("waybill_number is not null");
            return (Criteria) this;
        }

        public Criteria andWaybillNumberEqualTo(Integer value) {
            addCriterion("waybill_number =", value, "waybillNumber");
            return (Criteria) this;
        }

        public Criteria andWaybillNumberNotEqualTo(Integer value) {
            addCriterion("waybill_number <>", value, "waybillNumber");
            return (Criteria) this;
        }

        public Criteria andWaybillNumberGreaterThan(Integer value) {
            addCriterion("waybill_number >", value, "waybillNumber");
            return (Criteria) this;
        }

        public Criteria andWaybillNumberGreaterThanOrEqualTo(Integer value) {
            addCriterion("waybill_number >=", value, "waybillNumber");
            return (Criteria) this;
        }

        public Criteria andWaybillNumberLessThan(Integer value) {
            addCriterion("waybill_number <", value, "waybillNumber");
            return (Criteria) this;
        }

        public Criteria andWaybillNumberLessThanOrEqualTo(Integer value) {
            addCriterion("waybill_number <=", value, "waybillNumber");
            return (Criteria) this;
        }

        public Criteria andWaybillNumberIn(List<Integer> values) {
            addCriterion("waybill_number in", values, "waybillNumber");
            return (Criteria) this;
        }

        public Criteria andWaybillNumberNotIn(List<Integer> values) {
            addCriterion("waybill_number not in", values, "waybillNumber");
            return (Criteria) this;
        }

        public Criteria andWaybillNumberBetween(Integer value1, Integer value2) {
            addCriterion("waybill_number between", value1, value2, "waybillNumber");
            return (Criteria) this;
        }

        public Criteria andWaybillNumberNotBetween(Integer value1, Integer value2) {
            addCriterion("waybill_number not between", value1, value2, "waybillNumber");
            return (Criteria) this;
        }

        public Criteria andOperationDateIsNull() {
            addCriterion("operation_date is null");
            return (Criteria) this;
        }

        public Criteria andOperationDateIsNotNull() {
            addCriterion("operation_date is not null");
            return (Criteria) this;
        }

        public Criteria andOperationDateEqualTo(Date value) {
            addCriterion("operation_date =", value, "operationDate");
            return (Criteria) this;
        }

        public Criteria andOperationDateNotEqualTo(Date value) {
            addCriterion("operation_date <>", value, "operationDate");
            return (Criteria) this;
        }

        public Criteria andOperationDateGreaterThan(Date value) {
            addCriterion("operation_date >", value, "operationDate");
            return (Criteria) this;
        }

        public Criteria andOperationDateGreaterThanOrEqualTo(Date value) {
            addCriterion("operation_date >=", value, "operationDate");
            return (Criteria) this;
        }

        public Criteria andOperationDateLessThan(Date value) {
            addCriterion("operation_date <", value, "operationDate");
            return (Criteria) this;
        }

        public Criteria andOperationDateLessThanOrEqualTo(Date value) {
            addCriterion("operation_date <=", value, "operationDate");
            return (Criteria) this;
        }

        public Criteria andOperationDateIn(List<Date> values) {
            addCriterion("operation_date in", values, "operationDate");
            return (Criteria) this;
        }

        public Criteria andOperationDateNotIn(List<Date> values) {
            addCriterion("operation_date not in", values, "operationDate");
            return (Criteria) this;
        }

        public Criteria andOperationDateBetween(Date value1, Date value2) {
            addCriterion("operation_date between", value1, value2, "operationDate");
            return (Criteria) this;
        }

        public Criteria andOperationDateNotBetween(Date value1, Date value2) {
            addCriterion("operation_date not between", value1, value2, "operationDate");
            return (Criteria) this;
        }

        public Criteria andScanTypeIsNull() {
            addCriterion("scan_type is null");
            return (Criteria) this;
        }

        public Criteria andScanTypeIsNotNull() {
            addCriterion("scan_type is not null");
            return (Criteria) this;
        }

        public Criteria andScanTypeEqualTo(String value) {
            addCriterion("scan_type =", value, "scanType");
            return (Criteria) this;
        }

        public Criteria andScanTypeNotEqualTo(String value) {
            addCriterion("scan_type <>", value, "scanType");
            return (Criteria) this;
        }

        public Criteria andScanTypeGreaterThan(String value) {
            addCriterion("scan_type >", value, "scanType");
            return (Criteria) this;
        }

        public Criteria andScanTypeGreaterThanOrEqualTo(String value) {
            addCriterion("scan_type >=", value, "scanType");
            return (Criteria) this;
        }

        public Criteria andScanTypeLessThan(String value) {
            addCriterion("scan_type <", value, "scanType");
            return (Criteria) this;
        }

        public Criteria andScanTypeLessThanOrEqualTo(String value) {
            addCriterion("scan_type <=", value, "scanType");
            return (Criteria) this;
        }

        public Criteria andScanTypeLike(String value) {
            addCriterion("scan_type like", value, "scanType");
            return (Criteria) this;
        }

        public Criteria andScanTypeNotLike(String value) {
            addCriterion("scan_type not like", value, "scanType");
            return (Criteria) this;
        }

        public Criteria andScanTypeIn(List<String> values) {
            addCriterion("scan_type in", values, "scanType");
            return (Criteria) this;
        }

        public Criteria andScanTypeNotIn(List<String> values) {
            addCriterion("scan_type not in", values, "scanType");
            return (Criteria) this;
        }

        public Criteria andScanTypeBetween(String value1, String value2) {
            addCriterion("scan_type between", value1, value2, "scanType");
            return (Criteria) this;
        }

        public Criteria andScanTypeNotBetween(String value1, String value2) {
            addCriterion("scan_type not between", value1, value2, "scanType");
            return (Criteria) this;
        }

        public Criteria andExpressTypeIdIsNull() {
            addCriterion("express_type_id is null");
            return (Criteria) this;
        }

        public Criteria andExpressTypeIdIsNotNull() {
            addCriterion("express_type_id is not null");
            return (Criteria) this;
        }

        public Criteria andExpressTypeIdEqualTo(Integer value) {
            addCriterion("express_type_id =", value, "expressTypeId");
            return (Criteria) this;
        }

        public Criteria andExpressTypeIdNotEqualTo(Integer value) {
            addCriterion("express_type_id <>", value, "expressTypeId");
            return (Criteria) this;
        }

        public Criteria andExpressTypeIdGreaterThan(Integer value) {
            addCriterion("express_type_id >", value, "expressTypeId");
            return (Criteria) this;
        }

        public Criteria andExpressTypeIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("express_type_id >=", value, "expressTypeId");
            return (Criteria) this;
        }

        public Criteria andExpressTypeIdLessThan(Integer value) {
            addCriterion("express_type_id <", value, "expressTypeId");
            return (Criteria) this;
        }

        public Criteria andExpressTypeIdLessThanOrEqualTo(Integer value) {
            addCriterion("express_type_id <=", value, "expressTypeId");
            return (Criteria) this;
        }

        public Criteria andExpressTypeIdIn(List<Integer> values) {
            addCriterion("express_type_id in", values, "expressTypeId");
            return (Criteria) this;
        }

        public Criteria andExpressTypeIdNotIn(List<Integer> values) {
            addCriterion("express_type_id not in", values, "expressTypeId");
            return (Criteria) this;
        }

        public Criteria andExpressTypeIdBetween(Integer value1, Integer value2) {
            addCriterion("express_type_id between", value1, value2, "expressTypeId");
            return (Criteria) this;
        }

        public Criteria andExpressTypeIdNotBetween(Integer value1, Integer value2) {
            addCriterion("express_type_id not between", value1, value2, "expressTypeId");
            return (Criteria) this;
        }

        public Criteria andItemTypeIdIsNull() {
            addCriterion("item_type_id is null");
            return (Criteria) this;
        }

        public Criteria andItemTypeIdIsNotNull() {
            addCriterion("item_type_id is not null");
            return (Criteria) this;
        }

        public Criteria andItemTypeIdEqualTo(Integer value) {
            addCriterion("item_type_id =", value, "itemTypeId");
            return (Criteria) this;
        }

        public Criteria andItemTypeIdNotEqualTo(Integer value) {
            addCriterion("item_type_id <>", value, "itemTypeId");
            return (Criteria) this;
        }

        public Criteria andItemTypeIdGreaterThan(Integer value) {
            addCriterion("item_type_id >", value, "itemTypeId");
            return (Criteria) this;
        }

        public Criteria andItemTypeIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("item_type_id >=", value, "itemTypeId");
            return (Criteria) this;
        }

        public Criteria andItemTypeIdLessThan(Integer value) {
            addCriterion("item_type_id <", value, "itemTypeId");
            return (Criteria) this;
        }

        public Criteria andItemTypeIdLessThanOrEqualTo(Integer value) {
            addCriterion("item_type_id <=", value, "itemTypeId");
            return (Criteria) this;
        }

        public Criteria andItemTypeIdIn(List<Integer> values) {
            addCriterion("item_type_id in", values, "itemTypeId");
            return (Criteria) this;
        }

        public Criteria andItemTypeIdNotIn(List<Integer> values) {
            addCriterion("item_type_id not in", values, "itemTypeId");
            return (Criteria) this;
        }

        public Criteria andItemTypeIdBetween(Integer value1, Integer value2) {
            addCriterion("item_type_id between", value1, value2, "itemTypeId");
            return (Criteria) this;
        }

        public Criteria andItemTypeIdNotBetween(Integer value1, Integer value2) {
            addCriterion("item_type_id not between", value1, value2, "itemTypeId");
            return (Criteria) this;
        }

        public Criteria andSenderClientIsNull() {
            addCriterion("sender_client is null");
            return (Criteria) this;
        }

        public Criteria andSenderClientIsNotNull() {
            addCriterion("sender_client is not null");
            return (Criteria) this;
        }

        public Criteria andSenderClientEqualTo(String value) {
            addCriterion("sender_client =", value, "senderClient");
            return (Criteria) this;
        }

        public Criteria andSenderClientNotEqualTo(String value) {
            addCriterion("sender_client <>", value, "senderClient");
            return (Criteria) this;
        }

        public Criteria andSenderClientGreaterThan(String value) {
            addCriterion("sender_client >", value, "senderClient");
            return (Criteria) this;
        }

        public Criteria andSenderClientGreaterThanOrEqualTo(String value) {
            addCriterion("sender_client >=", value, "senderClient");
            return (Criteria) this;
        }

        public Criteria andSenderClientLessThan(String value) {
            addCriterion("sender_client <", value, "senderClient");
            return (Criteria) this;
        }

        public Criteria andSenderClientLessThanOrEqualTo(String value) {
            addCriterion("sender_client <=", value, "senderClient");
            return (Criteria) this;
        }

        public Criteria andSenderClientLike(String value) {
            addCriterion("sender_client like", value, "senderClient");
            return (Criteria) this;
        }

        public Criteria andSenderClientNotLike(String value) {
            addCriterion("sender_client not like", value, "senderClient");
            return (Criteria) this;
        }

        public Criteria andSenderClientIn(List<String> values) {
            addCriterion("sender_client in", values, "senderClient");
            return (Criteria) this;
        }

        public Criteria andSenderClientNotIn(List<String> values) {
            addCriterion("sender_client not in", values, "senderClient");
            return (Criteria) this;
        }

        public Criteria andSenderClientBetween(String value1, String value2) {
            addCriterion("sender_client between", value1, value2, "senderClient");
            return (Criteria) this;
        }

        public Criteria andSenderClientNotBetween(String value1, String value2) {
            addCriterion("sender_client not between", value1, value2, "senderClient");
            return (Criteria) this;
        }

        public Criteria andReceiverIsNull() {
            addCriterion("receiver is null");
            return (Criteria) this;
        }

        public Criteria andReceiverIsNotNull() {
            addCriterion("receiver is not null");
            return (Criteria) this;
        }

        public Criteria andReceiverEqualTo(String value) {
            addCriterion("receiver =", value, "receiver");
            return (Criteria) this;
        }

        public Criteria andReceiverNotEqualTo(String value) {
            addCriterion("receiver <>", value, "receiver");
            return (Criteria) this;
        }

        public Criteria andReceiverGreaterThan(String value) {
            addCriterion("receiver >", value, "receiver");
            return (Criteria) this;
        }

        public Criteria andReceiverGreaterThanOrEqualTo(String value) {
            addCriterion("receiver >=", value, "receiver");
            return (Criteria) this;
        }

        public Criteria andReceiverLessThan(String value) {
            addCriterion("receiver <", value, "receiver");
            return (Criteria) this;
        }

        public Criteria andReceiverLessThanOrEqualTo(String value) {
            addCriterion("receiver <=", value, "receiver");
            return (Criteria) this;
        }

        public Criteria andReceiverLike(String value) {
            addCriterion("receiver like", value, "receiver");
            return (Criteria) this;
        }

        public Criteria andReceiverNotLike(String value) {
            addCriterion("receiver not like", value, "receiver");
            return (Criteria) this;
        }

        public Criteria andReceiverIn(List<String> values) {
            addCriterion("receiver in", values, "receiver");
            return (Criteria) this;
        }

        public Criteria andReceiverNotIn(List<String> values) {
            addCriterion("receiver not in", values, "receiver");
            return (Criteria) this;
        }

        public Criteria andReceiverBetween(String value1, String value2) {
            addCriterion("receiver between", value1, value2, "receiver");
            return (Criteria) this;
        }

        public Criteria andReceiverNotBetween(String value1, String value2) {
            addCriterion("receiver not between", value1, value2, "receiver");
            return (Criteria) this;
        }

        public Criteria andTransportMethodIdIsNull() {
            addCriterion("transport_method_id is null");
            return (Criteria) this;
        }

        public Criteria andTransportMethodIdIsNotNull() {
            addCriterion("transport_method_id is not null");
            return (Criteria) this;
        }

        public Criteria andTransportMethodIdEqualTo(Integer value) {
            addCriterion("transport_method_id =", value, "transportMethodId");
            return (Criteria) this;
        }

        public Criteria andTransportMethodIdNotEqualTo(Integer value) {
            addCriterion("transport_method_id <>", value, "transportMethodId");
            return (Criteria) this;
        }

        public Criteria andTransportMethodIdGreaterThan(Integer value) {
            addCriterion("transport_method_id >", value, "transportMethodId");
            return (Criteria) this;
        }

        public Criteria andTransportMethodIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("transport_method_id >=", value, "transportMethodId");
            return (Criteria) this;
        }

        public Criteria andTransportMethodIdLessThan(Integer value) {
            addCriterion("transport_method_id <", value, "transportMethodId");
            return (Criteria) this;
        }

        public Criteria andTransportMethodIdLessThanOrEqualTo(Integer value) {
            addCriterion("transport_method_id <=", value, "transportMethodId");
            return (Criteria) this;
        }

        public Criteria andTransportMethodIdIn(List<Integer> values) {
            addCriterion("transport_method_id in", values, "transportMethodId");
            return (Criteria) this;
        }

        public Criteria andTransportMethodIdNotIn(List<Integer> values) {
            addCriterion("transport_method_id not in", values, "transportMethodId");
            return (Criteria) this;
        }

        public Criteria andTransportMethodIdBetween(Integer value1, Integer value2) {
            addCriterion("transport_method_id between", value1, value2, "transportMethodId");
            return (Criteria) this;
        }

        public Criteria andTransportMethodIdNotBetween(Integer value1, Integer value2) {
            addCriterion("transport_method_id not between", value1, value2, "transportMethodId");
            return (Criteria) this;
        }

        public Criteria andPaymentMethodIdIsNull() {
            addCriterion("payment_method_id is null");
            return (Criteria) this;
        }

        public Criteria andPaymentMethodIdIsNotNull() {
            addCriterion("payment_method_id is not null");
            return (Criteria) this;
        }

        public Criteria andPaymentMethodIdEqualTo(Integer value) {
            addCriterion("payment_method_id =", value, "paymentMethodId");
            return (Criteria) this;
        }

        public Criteria andPaymentMethodIdNotEqualTo(Integer value) {
            addCriterion("payment_method_id <>", value, "paymentMethodId");
            return (Criteria) this;
        }

        public Criteria andPaymentMethodIdGreaterThan(Integer value) {
            addCriterion("payment_method_id >", value, "paymentMethodId");
            return (Criteria) this;
        }

        public Criteria andPaymentMethodIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("payment_method_id >=", value, "paymentMethodId");
            return (Criteria) this;
        }

        public Criteria andPaymentMethodIdLessThan(Integer value) {
            addCriterion("payment_method_id <", value, "paymentMethodId");
            return (Criteria) this;
        }

        public Criteria andPaymentMethodIdLessThanOrEqualTo(Integer value) {
            addCriterion("payment_method_id <=", value, "paymentMethodId");
            return (Criteria) this;
        }

        public Criteria andPaymentMethodIdIn(List<Integer> values) {
            addCriterion("payment_method_id in", values, "paymentMethodId");
            return (Criteria) this;
        }

        public Criteria andPaymentMethodIdNotIn(List<Integer> values) {
            addCriterion("payment_method_id not in", values, "paymentMethodId");
            return (Criteria) this;
        }

        public Criteria andPaymentMethodIdBetween(Integer value1, Integer value2) {
            addCriterion("payment_method_id between", value1, value2, "paymentMethodId");
            return (Criteria) this;
        }

        public Criteria andPaymentMethodIdNotBetween(Integer value1, Integer value2) {
            addCriterion("payment_method_id not between", value1, value2, "paymentMethodId");
            return (Criteria) this;
        }

        public Criteria andSendNetworkIdIsNull() {
            addCriterion("send_network_id is null");
            return (Criteria) this;
        }

        public Criteria andSendNetworkIdIsNotNull() {
            addCriterion("send_network_id is not null");
            return (Criteria) this;
        }

        public Criteria andSendNetworkIdEqualTo(Integer value) {
            addCriterion("send_network_id =", value, "sendNetworkId");
            return (Criteria) this;
        }

        public Criteria andSendNetworkIdNotEqualTo(Integer value) {
            addCriterion("send_network_id <>", value, "sendNetworkId");
            return (Criteria) this;
        }

        public Criteria andSendNetworkIdGreaterThan(Integer value) {
            addCriterion("send_network_id >", value, "sendNetworkId");
            return (Criteria) this;
        }

        public Criteria andSendNetworkIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("send_network_id >=", value, "sendNetworkId");
            return (Criteria) this;
        }

        public Criteria andSendNetworkIdLessThan(Integer value) {
            addCriterion("send_network_id <", value, "sendNetworkId");
            return (Criteria) this;
        }

        public Criteria andSendNetworkIdLessThanOrEqualTo(Integer value) {
            addCriterion("send_network_id <=", value, "sendNetworkId");
            return (Criteria) this;
        }

        public Criteria andSendNetworkIdIn(List<Integer> values) {
            addCriterion("send_network_id in", values, "sendNetworkId");
            return (Criteria) this;
        }

        public Criteria andSendNetworkIdNotIn(List<Integer> values) {
            addCriterion("send_network_id not in", values, "sendNetworkId");
            return (Criteria) this;
        }

        public Criteria andSendNetworkIdBetween(Integer value1, Integer value2) {
            addCriterion("send_network_id between", value1, value2, "sendNetworkId");
            return (Criteria) this;
        }

        public Criteria andSendNetworkIdNotBetween(Integer value1, Integer value2) {
            addCriterion("send_network_id not between", value1, value2, "sendNetworkId");
            return (Criteria) this;
        }

        public Criteria andWeightIsNull() {
            addCriterion("weight is null");
            return (Criteria) this;
        }

        public Criteria andWeightIsNotNull() {
            addCriterion("weight is not null");
            return (Criteria) this;
        }

        public Criteria andWeightEqualTo(BigDecimal value) {
            addCriterion("weight =", value, "weight");
            return (Criteria) this;
        }

        public Criteria andWeightNotEqualTo(BigDecimal value) {
            addCriterion("weight <>", value, "weight");
            return (Criteria) this;
        }

        public Criteria andWeightGreaterThan(BigDecimal value) {
            addCriterion("weight >", value, "weight");
            return (Criteria) this;
        }

        public Criteria andWeightGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("weight >=", value, "weight");
            return (Criteria) this;
        }

        public Criteria andWeightLessThan(BigDecimal value) {
            addCriterion("weight <", value, "weight");
            return (Criteria) this;
        }

        public Criteria andWeightLessThanOrEqualTo(BigDecimal value) {
            addCriterion("weight <=", value, "weight");
            return (Criteria) this;
        }

        public Criteria andWeightIn(List<BigDecimal> values) {
            addCriterion("weight in", values, "weight");
            return (Criteria) this;
        }

        public Criteria andWeightNotIn(List<BigDecimal> values) {
            addCriterion("weight not in", values, "weight");
            return (Criteria) this;
        }

        public Criteria andWeightBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("weight between", value1, value2, "weight");
            return (Criteria) this;
        }

        public Criteria andWeightNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("weight not between", value1, value2, "weight");
            return (Criteria) this;
        }

        public Criteria andTakerIdIsNull() {
            addCriterion("taker_id is null");
            return (Criteria) this;
        }

        public Criteria andTakerIdIsNotNull() {
            addCriterion("taker_id is not null");
            return (Criteria) this;
        }

        public Criteria andTakerIdEqualTo(Integer value) {
            addCriterion("taker_id =", value, "takerId");
            return (Criteria) this;
        }

        public Criteria andTakerIdNotEqualTo(Integer value) {
            addCriterion("taker_id <>", value, "takerId");
            return (Criteria) this;
        }

        public Criteria andTakerIdGreaterThan(Integer value) {
            addCriterion("taker_id >", value, "takerId");
            return (Criteria) this;
        }

        public Criteria andTakerIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("taker_id >=", value, "takerId");
            return (Criteria) this;
        }

        public Criteria andTakerIdLessThan(Integer value) {
            addCriterion("taker_id <", value, "takerId");
            return (Criteria) this;
        }

        public Criteria andTakerIdLessThanOrEqualTo(Integer value) {
            addCriterion("taker_id <=", value, "takerId");
            return (Criteria) this;
        }

        public Criteria andTakerIdIn(List<Integer> values) {
            addCriterion("taker_id in", values, "takerId");
            return (Criteria) this;
        }

        public Criteria andTakerIdNotIn(List<Integer> values) {
            addCriterion("taker_id not in", values, "takerId");
            return (Criteria) this;
        }

        public Criteria andTakerIdBetween(Integer value1, Integer value2) {
            addCriterion("taker_id between", value1, value2, "takerId");
            return (Criteria) this;
        }

        public Criteria andTakerIdNotBetween(Integer value1, Integer value2) {
            addCriterion("taker_id not between", value1, value2, "takerId");
            return (Criteria) this;
        }

        public Criteria andDeliverymanIdIsNull() {
            addCriterion("deliveryman_id is null");
            return (Criteria) this;
        }

        public Criteria andDeliverymanIdIsNotNull() {
            addCriterion("deliveryman_id is not null");
            return (Criteria) this;
        }

        public Criteria andDeliverymanIdEqualTo(Integer value) {
            addCriterion("deliveryman_id =", value, "deliverymanId");
            return (Criteria) this;
        }

        public Criteria andDeliverymanIdNotEqualTo(Integer value) {
            addCriterion("deliveryman_id <>", value, "deliverymanId");
            return (Criteria) this;
        }

        public Criteria andDeliverymanIdGreaterThan(Integer value) {
            addCriterion("deliveryman_id >", value, "deliverymanId");
            return (Criteria) this;
        }

        public Criteria andDeliverymanIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("deliveryman_id >=", value, "deliverymanId");
            return (Criteria) this;
        }

        public Criteria andDeliverymanIdLessThan(Integer value) {
            addCriterion("deliveryman_id <", value, "deliverymanId");
            return (Criteria) this;
        }

        public Criteria andDeliverymanIdLessThanOrEqualTo(Integer value) {
            addCriterion("deliveryman_id <=", value, "deliverymanId");
            return (Criteria) this;
        }

        public Criteria andDeliverymanIdIn(List<Integer> values) {
            addCriterion("deliveryman_id in", values, "deliverymanId");
            return (Criteria) this;
        }

        public Criteria andDeliverymanIdNotIn(List<Integer> values) {
            addCriterion("deliveryman_id not in", values, "deliverymanId");
            return (Criteria) this;
        }

        public Criteria andDeliverymanIdBetween(Integer value1, Integer value2) {
            addCriterion("deliveryman_id between", value1, value2, "deliverymanId");
            return (Criteria) this;
        }

        public Criteria andDeliverymanIdNotBetween(Integer value1, Integer value2) {
            addCriterion("deliveryman_id not between", value1, value2, "deliverymanId");
            return (Criteria) this;
        }

        public Criteria andScannerIdIsNull() {
            addCriterion("scanner_id is null");
            return (Criteria) this;
        }

        public Criteria andScannerIdIsNotNull() {
            addCriterion("scanner_id is not null");
            return (Criteria) this;
        }

        public Criteria andScannerIdEqualTo(Integer value) {
            addCriterion("scanner_id =", value, "scannerId");
            return (Criteria) this;
        }

        public Criteria andScannerIdNotEqualTo(Integer value) {
            addCriterion("scanner_id <>", value, "scannerId");
            return (Criteria) this;
        }

        public Criteria andScannerIdGreaterThan(Integer value) {
            addCriterion("scanner_id >", value, "scannerId");
            return (Criteria) this;
        }

        public Criteria andScannerIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("scanner_id >=", value, "scannerId");
            return (Criteria) this;
        }

        public Criteria andScannerIdLessThan(Integer value) {
            addCriterion("scanner_id <", value, "scannerId");
            return (Criteria) this;
        }

        public Criteria andScannerIdLessThanOrEqualTo(Integer value) {
            addCriterion("scanner_id <=", value, "scannerId");
            return (Criteria) this;
        }

        public Criteria andScannerIdIn(List<Integer> values) {
            addCriterion("scanner_id in", values, "scannerId");
            return (Criteria) this;
        }

        public Criteria andScannerIdNotIn(List<Integer> values) {
            addCriterion("scanner_id not in", values, "scannerId");
            return (Criteria) this;
        }

        public Criteria andScannerIdBetween(Integer value1, Integer value2) {
            addCriterion("scanner_id between", value1, value2, "scannerId");
            return (Criteria) this;
        }

        public Criteria andScannerIdNotBetween(Integer value1, Integer value2) {
            addCriterion("scanner_id not between", value1, value2, "scannerId");
            return (Criteria) this;
        }

        public Criteria andLastStopIdIsNull() {
            addCriterion("last_stop_id is null");
            return (Criteria) this;
        }

        public Criteria andLastStopIdIsNotNull() {
            addCriterion("last_stop_id is not null");
            return (Criteria) this;
        }

        public Criteria andLastStopIdEqualTo(Integer value) {
            addCriterion("last_stop_id =", value, "lastStopId");
            return (Criteria) this;
        }

        public Criteria andLastStopIdNotEqualTo(Integer value) {
            addCriterion("last_stop_id <>", value, "lastStopId");
            return (Criteria) this;
        }

        public Criteria andLastStopIdGreaterThan(Integer value) {
            addCriterion("last_stop_id >", value, "lastStopId");
            return (Criteria) this;
        }

        public Criteria andLastStopIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("last_stop_id >=", value, "lastStopId");
            return (Criteria) this;
        }

        public Criteria andLastStopIdLessThan(Integer value) {
            addCriterion("last_stop_id <", value, "lastStopId");
            return (Criteria) this;
        }

        public Criteria andLastStopIdLessThanOrEqualTo(Integer value) {
            addCriterion("last_stop_id <=", value, "lastStopId");
            return (Criteria) this;
        }

        public Criteria andLastStopIdIn(List<Integer> values) {
            addCriterion("last_stop_id in", values, "lastStopId");
            return (Criteria) this;
        }

        public Criteria andLastStopIdNotIn(List<Integer> values) {
            addCriterion("last_stop_id not in", values, "lastStopId");
            return (Criteria) this;
        }

        public Criteria andLastStopIdBetween(Integer value1, Integer value2) {
            addCriterion("last_stop_id between", value1, value2, "lastStopId");
            return (Criteria) this;
        }

        public Criteria andLastStopIdNotBetween(Integer value1, Integer value2) {
            addCriterion("last_stop_id not between", value1, value2, "lastStopId");
            return (Criteria) this;
        }

        public Criteria andNextStopIdIsNull() {
            addCriterion("next_stop_id is null");
            return (Criteria) this;
        }

        public Criteria andNextStopIdIsNotNull() {
            addCriterion("next_stop_id is not null");
            return (Criteria) this;
        }

        public Criteria andNextStopIdEqualTo(Integer value) {
            addCriterion("next_stop_id =", value, "nextStopId");
            return (Criteria) this;
        }

        public Criteria andNextStopIdNotEqualTo(Integer value) {
            addCriterion("next_stop_id <>", value, "nextStopId");
            return (Criteria) this;
        }

        public Criteria andNextStopIdGreaterThan(Integer value) {
            addCriterion("next_stop_id >", value, "nextStopId");
            return (Criteria) this;
        }

        public Criteria andNextStopIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("next_stop_id >=", value, "nextStopId");
            return (Criteria) this;
        }

        public Criteria andNextStopIdLessThan(Integer value) {
            addCriterion("next_stop_id <", value, "nextStopId");
            return (Criteria) this;
        }

        public Criteria andNextStopIdLessThanOrEqualTo(Integer value) {
            addCriterion("next_stop_id <=", value, "nextStopId");
            return (Criteria) this;
        }

        public Criteria andNextStopIdIn(List<Integer> values) {
            addCriterion("next_stop_id in", values, "nextStopId");
            return (Criteria) this;
        }

        public Criteria andNextStopIdNotIn(List<Integer> values) {
            addCriterion("next_stop_id not in", values, "nextStopId");
            return (Criteria) this;
        }

        public Criteria andNextStopIdBetween(Integer value1, Integer value2) {
            addCriterion("next_stop_id between", value1, value2, "nextStopId");
            return (Criteria) this;
        }

        public Criteria andNextStopIdNotBetween(Integer value1, Integer value2) {
            addCriterion("next_stop_id not between", value1, value2, "nextStopId");
            return (Criteria) this;
        }

        public Criteria andDestinationIdIsNull() {
            addCriterion("destination_id is null");
            return (Criteria) this;
        }

        public Criteria andDestinationIdIsNotNull() {
            addCriterion("destination_id is not null");
            return (Criteria) this;
        }

        public Criteria andDestinationIdEqualTo(Integer value) {
            addCriterion("destination_id =", value, "destinationId");
            return (Criteria) this;
        }

        public Criteria andDestinationIdNotEqualTo(Integer value) {
            addCriterion("destination_id <>", value, "destinationId");
            return (Criteria) this;
        }

        public Criteria andDestinationIdGreaterThan(Integer value) {
            addCriterion("destination_id >", value, "destinationId");
            return (Criteria) this;
        }

        public Criteria andDestinationIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("destination_id >=", value, "destinationId");
            return (Criteria) this;
        }

        public Criteria andDestinationIdLessThan(Integer value) {
            addCriterion("destination_id <", value, "destinationId");
            return (Criteria) this;
        }

        public Criteria andDestinationIdLessThanOrEqualTo(Integer value) {
            addCriterion("destination_id <=", value, "destinationId");
            return (Criteria) this;
        }

        public Criteria andDestinationIdIn(List<Integer> values) {
            addCriterion("destination_id in", values, "destinationId");
            return (Criteria) this;
        }

        public Criteria andDestinationIdNotIn(List<Integer> values) {
            addCriterion("destination_id not in", values, "destinationId");
            return (Criteria) this;
        }

        public Criteria andDestinationIdBetween(Integer value1, Integer value2) {
            addCriterion("destination_id between", value1, value2, "destinationId");
            return (Criteria) this;
        }

        public Criteria andDestinationIdNotBetween(Integer value1, Integer value2) {
            addCriterion("destination_id not between", value1, value2, "destinationId");
            return (Criteria) this;
        }

        public Criteria andShiftIdIsNull() {
            addCriterion("shift_id is null");
            return (Criteria) this;
        }

        public Criteria andShiftIdIsNotNull() {
            addCriterion("shift_id is not null");
            return (Criteria) this;
        }

        public Criteria andShiftIdEqualTo(Integer value) {
            addCriterion("shift_id =", value, "shiftId");
            return (Criteria) this;
        }

        public Criteria andShiftIdNotEqualTo(Integer value) {
            addCriterion("shift_id <>", value, "shiftId");
            return (Criteria) this;
        }

        public Criteria andShiftIdGreaterThan(Integer value) {
            addCriterion("shift_id >", value, "shiftId");
            return (Criteria) this;
        }

        public Criteria andShiftIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("shift_id >=", value, "shiftId");
            return (Criteria) this;
        }

        public Criteria andShiftIdLessThan(Integer value) {
            addCriterion("shift_id <", value, "shiftId");
            return (Criteria) this;
        }

        public Criteria andShiftIdLessThanOrEqualTo(Integer value) {
            addCriterion("shift_id <=", value, "shiftId");
            return (Criteria) this;
        }

        public Criteria andShiftIdIn(List<Integer> values) {
            addCriterion("shift_id in", values, "shiftId");
            return (Criteria) this;
        }

        public Criteria andShiftIdNotIn(List<Integer> values) {
            addCriterion("shift_id not in", values, "shiftId");
            return (Criteria) this;
        }

        public Criteria andShiftIdBetween(Integer value1, Integer value2) {
            addCriterion("shift_id between", value1, value2, "shiftId");
            return (Criteria) this;
        }

        public Criteria andShiftIdNotBetween(Integer value1, Integer value2) {
            addCriterion("shift_id not between", value1, value2, "shiftId");
            return (Criteria) this;
        }

        public Criteria andPouchIdIsNull() {
            addCriterion("pouch_id is null");
            return (Criteria) this;
        }

        public Criteria andPouchIdIsNotNull() {
            addCriterion("pouch_id is not null");
            return (Criteria) this;
        }

        public Criteria andPouchIdEqualTo(Integer value) {
            addCriterion("pouch_id =", value, "pouchId");
            return (Criteria) this;
        }

        public Criteria andPouchIdNotEqualTo(Integer value) {
            addCriterion("pouch_id <>", value, "pouchId");
            return (Criteria) this;
        }

        public Criteria andPouchIdGreaterThan(Integer value) {
            addCriterion("pouch_id >", value, "pouchId");
            return (Criteria) this;
        }

        public Criteria andPouchIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("pouch_id >=", value, "pouchId");
            return (Criteria) this;
        }

        public Criteria andPouchIdLessThan(Integer value) {
            addCriterion("pouch_id <", value, "pouchId");
            return (Criteria) this;
        }

        public Criteria andPouchIdLessThanOrEqualTo(Integer value) {
            addCriterion("pouch_id <=", value, "pouchId");
            return (Criteria) this;
        }

        public Criteria andPouchIdIn(List<Integer> values) {
            addCriterion("pouch_id in", values, "pouchId");
            return (Criteria) this;
        }

        public Criteria andPouchIdNotIn(List<Integer> values) {
            addCriterion("pouch_id not in", values, "pouchId");
            return (Criteria) this;
        }

        public Criteria andPouchIdBetween(Integer value1, Integer value2) {
            addCriterion("pouch_id between", value1, value2, "pouchId");
            return (Criteria) this;
        }

        public Criteria andPouchIdNotBetween(Integer value1, Integer value2) {
            addCriterion("pouch_id not between", value1, value2, "pouchId");
            return (Criteria) this;
        }

        public Criteria andCarIdIsNull() {
            addCriterion("car_id is null");
            return (Criteria) this;
        }

        public Criteria andCarIdIsNotNull() {
            addCriterion("car_id is not null");
            return (Criteria) this;
        }

        public Criteria andCarIdEqualTo(Integer value) {
            addCriterion("car_id =", value, "carId");
            return (Criteria) this;
        }

        public Criteria andCarIdNotEqualTo(Integer value) {
            addCriterion("car_id <>", value, "carId");
            return (Criteria) this;
        }

        public Criteria andCarIdGreaterThan(Integer value) {
            addCriterion("car_id >", value, "carId");
            return (Criteria) this;
        }

        public Criteria andCarIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("car_id >=", value, "carId");
            return (Criteria) this;
        }

        public Criteria andCarIdLessThan(Integer value) {
            addCriterion("car_id <", value, "carId");
            return (Criteria) this;
        }

        public Criteria andCarIdLessThanOrEqualTo(Integer value) {
            addCriterion("car_id <=", value, "carId");
            return (Criteria) this;
        }

        public Criteria andCarIdIn(List<Integer> values) {
            addCriterion("car_id in", values, "carId");
            return (Criteria) this;
        }

        public Criteria andCarIdNotIn(List<Integer> values) {
            addCriterion("car_id not in", values, "carId");
            return (Criteria) this;
        }

        public Criteria andCarIdBetween(Integer value1, Integer value2) {
            addCriterion("car_id between", value1, value2, "carId");
            return (Criteria) this;
        }

        public Criteria andCarIdNotBetween(Integer value1, Integer value2) {
            addCriterion("car_id not between", value1, value2, "carId");
            return (Criteria) this;
        }

        public Criteria andAgentIdIsNull() {
            addCriterion("agent_id is null");
            return (Criteria) this;
        }

        public Criteria andAgentIdIsNotNull() {
            addCriterion("agent_id is not null");
            return (Criteria) this;
        }

        public Criteria andAgentIdEqualTo(Integer value) {
            addCriterion("agent_id =", value, "agentId");
            return (Criteria) this;
        }

        public Criteria andAgentIdNotEqualTo(Integer value) {
            addCriterion("agent_id <>", value, "agentId");
            return (Criteria) this;
        }

        public Criteria andAgentIdGreaterThan(Integer value) {
            addCriterion("agent_id >", value, "agentId");
            return (Criteria) this;
        }

        public Criteria andAgentIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("agent_id >=", value, "agentId");
            return (Criteria) this;
        }

        public Criteria andAgentIdLessThan(Integer value) {
            addCriterion("agent_id <", value, "agentId");
            return (Criteria) this;
        }

        public Criteria andAgentIdLessThanOrEqualTo(Integer value) {
            addCriterion("agent_id <=", value, "agentId");
            return (Criteria) this;
        }

        public Criteria andAgentIdIn(List<Integer> values) {
            addCriterion("agent_id in", values, "agentId");
            return (Criteria) this;
        }

        public Criteria andAgentIdNotIn(List<Integer> values) {
            addCriterion("agent_id not in", values, "agentId");
            return (Criteria) this;
        }

        public Criteria andAgentIdBetween(Integer value1, Integer value2) {
            addCriterion("agent_id between", value1, value2, "agentId");
            return (Criteria) this;
        }

        public Criteria andAgentIdNotBetween(Integer value1, Integer value2) {
            addCriterion("agent_id not between", value1, value2, "agentId");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIsNull() {
            addCriterion("create_time is null");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIsNotNull() {
            addCriterion("create_time is not null");
            return (Criteria) this;
        }

        public Criteria andCreateTimeEqualTo(Date value) {
            addCriterion("create_time =", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotEqualTo(Date value) {
            addCriterion("create_time <>", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeGreaterThan(Date value) {
            addCriterion("create_time >", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("create_time >=", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeLessThan(Date value) {
            addCriterion("create_time <", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeLessThanOrEqualTo(Date value) {
            addCriterion("create_time <=", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIn(List<Date> values) {
            addCriterion("create_time in", values, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotIn(List<Date> values) {
            addCriterion("create_time not in", values, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeBetween(Date value1, Date value2) {
            addCriterion("create_time between", value1, value2, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotBetween(Date value1, Date value2) {
            addCriterion("create_time not between", value1, value2, "createTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIsNull() {
            addCriterion("update_time is null");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIsNotNull() {
            addCriterion("update_time is not null");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeEqualTo(Date value) {
            addCriterion("update_time =", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotEqualTo(Date value) {
            addCriterion("update_time <>", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeGreaterThan(Date value) {
            addCriterion("update_time >", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("update_time >=", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeLessThan(Date value) {
            addCriterion("update_time <", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeLessThanOrEqualTo(Date value) {
            addCriterion("update_time <=", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIn(List<Date> values) {
            addCriterion("update_time in", values, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotIn(List<Date> values) {
            addCriterion("update_time not in", values, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeBetween(Date value1, Date value2) {
            addCriterion("update_time between", value1, value2, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotBetween(Date value1, Date value2) {
            addCriterion("update_time not between", value1, value2, "updateTime");
            return (Criteria) this;
        }

        public Criteria andStatusIsNull() {
            addCriterion("status is null");
            return (Criteria) this;
        }

        public Criteria andStatusIsNotNull() {
            addCriterion("status is not null");
            return (Criteria) this;
        }

        public Criteria andStatusEqualTo(Integer value) {
            addCriterion("status =", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotEqualTo(Integer value) {
            addCriterion("status <>", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusGreaterThan(Integer value) {
            addCriterion("status >", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusGreaterThanOrEqualTo(Integer value) {
            addCriterion("status >=", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusLessThan(Integer value) {
            addCriterion("status <", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusLessThanOrEqualTo(Integer value) {
            addCriterion("status <=", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusIn(List<Integer> values) {
            addCriterion("status in", values, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotIn(List<Integer> values) {
            addCriterion("status not in", values, "status");
            return (Criteria) this;
        }

        public Criteria andStatusBetween(Integer value1, Integer value2) {
            addCriterion("status between", value1, value2, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotBetween(Integer value1, Integer value2) {
            addCriterion("status not between", value1, value2, "status");
            return (Criteria) this;
        }

        public Criteria andScanPowerIsNull() {
            addCriterion("scan_power is null");
            return (Criteria) this;
        }

        public Criteria andScanPowerIsNotNull() {
            addCriterion("scan_power is not null");
            return (Criteria) this;
        }

        public Criteria andScanPowerEqualTo(String value) {
            addCriterion("scan_power =", value, "scanPower");
            return (Criteria) this;
        }

        public Criteria andScanPowerNotEqualTo(String value) {
            addCriterion("scan_power <>", value, "scanPower");
            return (Criteria) this;
        }

        public Criteria andScanPowerGreaterThan(String value) {
            addCriterion("scan_power >", value, "scanPower");
            return (Criteria) this;
        }

        public Criteria andScanPowerGreaterThanOrEqualTo(String value) {
            addCriterion("scan_power >=", value, "scanPower");
            return (Criteria) this;
        }

        public Criteria andScanPowerLessThan(String value) {
            addCriterion("scan_power <", value, "scanPower");
            return (Criteria) this;
        }

        public Criteria andScanPowerLessThanOrEqualTo(String value) {
            addCriterion("scan_power <=", value, "scanPower");
            return (Criteria) this;
        }

        public Criteria andScanPowerLike(String value) {
            addCriterion("scan_power like", value, "scanPower");
            return (Criteria) this;
        }

        public Criteria andScanPowerNotLike(String value) {
            addCriterion("scan_power not like", value, "scanPower");
            return (Criteria) this;
        }

        public Criteria andScanPowerIn(List<String> values) {
            addCriterion("scan_power in", values, "scanPower");
            return (Criteria) this;
        }

        public Criteria andScanPowerNotIn(List<String> values) {
            addCriterion("scan_power not in", values, "scanPower");
            return (Criteria) this;
        }

        public Criteria andScanPowerBetween(String value1, String value2) {
            addCriterion("scan_power between", value1, value2, "scanPower");
            return (Criteria) this;
        }

        public Criteria andScanPowerNotBetween(String value1, String value2) {
            addCriterion("scan_power not between", value1, value2, "scanPower");
            return (Criteria) this;
        }

        public Criteria andDestinationNetworkIdIsNull() {
            addCriterion("destination_network_id is null");
            return (Criteria) this;
        }

        public Criteria andDestinationNetworkIdIsNotNull() {
            addCriterion("destination_network_id is not null");
            return (Criteria) this;
        }

        public Criteria andDestinationNetworkIdEqualTo(Integer value) {
            addCriterion("destination_network_id =", value, "destinationNetworkId");
            return (Criteria) this;
        }

        public Criteria andDestinationNetworkIdNotEqualTo(Integer value) {
            addCriterion("destination_network_id <>", value, "destinationNetworkId");
            return (Criteria) this;
        }

        public Criteria andDestinationNetworkIdGreaterThan(Integer value) {
            addCriterion("destination_network_id >", value, "destinationNetworkId");
            return (Criteria) this;
        }

        public Criteria andDestinationNetworkIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("destination_network_id >=", value, "destinationNetworkId");
            return (Criteria) this;
        }

        public Criteria andDestinationNetworkIdLessThan(Integer value) {
            addCriterion("destination_network_id <", value, "destinationNetworkId");
            return (Criteria) this;
        }

        public Criteria andDestinationNetworkIdLessThanOrEqualTo(Integer value) {
            addCriterion("destination_network_id <=", value, "destinationNetworkId");
            return (Criteria) this;
        }

        public Criteria andDestinationNetworkIdIn(List<Integer> values) {
            addCriterion("destination_network_id in", values, "destinationNetworkId");
            return (Criteria) this;
        }

        public Criteria andDestinationNetworkIdNotIn(List<Integer> values) {
            addCriterion("destination_network_id not in", values, "destinationNetworkId");
            return (Criteria) this;
        }

        public Criteria andDestinationNetworkIdBetween(Integer value1, Integer value2) {
            addCriterion("destination_network_id between", value1, value2, "destinationNetworkId");
            return (Criteria) this;
        }

        public Criteria andDestinationNetworkIdNotBetween(Integer value1, Integer value2) {
            addCriterion("destination_network_id not between", value1, value2, "destinationNetworkId");
            return (Criteria) this;
        }

        public Criteria andScanNetworkIdIsNull() {
            addCriterion("scan_network_id is null");
            return (Criteria) this;
        }

        public Criteria andScanNetworkIdIsNotNull() {
            addCriterion("scan_network_id is not null");
            return (Criteria) this;
        }

        public Criteria andScanNetworkIdEqualTo(Integer value) {
            addCriterion("scan_network_id =", value, "scanNetworkId");
            return (Criteria) this;
        }

        public Criteria andScanNetworkIdNotEqualTo(Integer value) {
            addCriterion("scan_network_id <>", value, "scanNetworkId");
            return (Criteria) this;
        }

        public Criteria andScanNetworkIdGreaterThan(Integer value) {
            addCriterion("scan_network_id >", value, "scanNetworkId");
            return (Criteria) this;
        }

        public Criteria andScanNetworkIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("scan_network_id >=", value, "scanNetworkId");
            return (Criteria) this;
        }

        public Criteria andScanNetworkIdLessThan(Integer value) {
            addCriterion("scan_network_id <", value, "scanNetworkId");
            return (Criteria) this;
        }

        public Criteria andScanNetworkIdLessThanOrEqualTo(Integer value) {
            addCriterion("scan_network_id <=", value, "scanNetworkId");
            return (Criteria) this;
        }

        public Criteria andScanNetworkIdIn(List<Integer> values) {
            addCriterion("scan_network_id in", values, "scanNetworkId");
            return (Criteria) this;
        }

        public Criteria andScanNetworkIdNotIn(List<Integer> values) {
            addCriterion("scan_network_id not in", values, "scanNetworkId");
            return (Criteria) this;
        }

        public Criteria andScanNetworkIdBetween(Integer value1, Integer value2) {
            addCriterion("scan_network_id between", value1, value2, "scanNetworkId");
            return (Criteria) this;
        }

        public Criteria andScanNetworkIdNotBetween(Integer value1, Integer value2) {
            addCriterion("scan_network_id not between", value1, value2, "scanNetworkId");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}